package com.smrtcold.dev.plc;

import com.github.xingshuangs.iot.protocol.s7.enums.EPlcType;
import com.github.xingshuangs.iot.protocol.s7.service.S7PLC;

/**
 * 简单示例：连接 S7-200 SMART 并读取 Q13.0 线圈状态。
 */
public class ReadQ13Demo {

    public static void main(String[] args) {
        S7PLC plc = new S7PLC(EPlcType.S200_SMART, "192.168.3.6");
        try {
            plc.checkConnected();
           ;
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readBoolean("QB 13.0","QB13.2"));
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readBoolean("IB 13.0"));
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readBoolean("VB13.0"));
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readBoolean("MB 13.0"));
//            System.out.printf("Q13.0 当前状态: %s%n",   plc.readBoolean("SB13.0"));
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readBoolean("Q 13.0"));
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readBoolean("M 13.0"));
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readInt16("MB 13.0"));
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readInt16("Q13.0"));
            System.out.printf("Q13.0 当前状态: %s%n",   plc.readByte("Q13" ));
        } catch (Exception ex) {
            System.err.println("读取失败: " + ex.getMessage());
            ex.printStackTrace();
        }
    }
}

